This function returns both the widget at the given toplevel coordinates,
and the translated x/y in widget relative coordinates.
{
return propagate_event (widget, event, TRUE, topmost);
}
+
+GtkWidget *
+_gtk_toplevel_pick (GtkWindow *toplevel,
+ gdouble x,
+ gdouble y,
+ gdouble *x_out,
+ gdouble *y_out)
+{
+ GtkWidget *target = NULL, *widget = GTK_WIDGET (toplevel);
+
+ while (widget)
+ {
+ target = widget;
+ widget = GTK_WIDGET_GET_CLASS (target)->pick (widget, x, y, &x, &y);
+ }
+
+ if (x_out)
+ *x_out = x;
+ if (y_out)
+ *y_out = y;
+
+ return target;
+}
GdkEvent *event,
GtkWidget *topmost);
+GtkWidget * _gtk_toplevel_pick (GtkWindow *toplevel,
+ gdouble x,
+ gdouble y,
+ gdouble *x_out,
+ gdouble *y_out);
gdouble _gtk_get_slowdown (void);
void _gtk_set_slowdown (gdouble slowdown_factor);